atspi: Be more careful
authorMatthias Clasen <mclasen@redhat.com>
Mon, 19 Oct 2020 15:55:44 +0000 (11:55 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 19 Oct 2020 16:09:08 +0000 (12:09 -0400)
We have non-widget accessibles now, so guard against
change notification being emitted on them.

gtk/a11y/gtkatspicontext.c

index 53b39c474323b3b3e0936ae85190355ce9db44c3..12775e94cd085eaaede5754d1fab4f82a6f2b9e0 100644 (file)
@@ -787,9 +787,14 @@ gtk_at_spi_context_state_change (GtkATContext                *ctx,
                                  GtkAccessibleAttributeSet   *relations)
 {
   GtkAtSpiContext *self = GTK_AT_SPI_CONTEXT (ctx);
-  GtkWidget *widget = GTK_WIDGET (gtk_at_context_get_accessible (ctx));
+  GtkAccessible *accessible = gtk_at_context_get_accessible (ctx);
+  GtkWidget *widget;
   GtkAccessibleValue *value;
 
+  if (!GTK_IS_WIDGET (accessible))
+    return;
+
+  widget = GTK_WIDGET (accessible);
   if (!gtk_widget_get_realized (widget))
     return;